package com.cn.controller;

import com.cn.domain.Customer;
import com.cn.domain.Employee;
import com.cn.domain.Merchandise;
import com.cn.service.SelectCusDao;
import com.cn.service.SelectEmpDao;
import com.cn.service.SelectGoodsDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.SessionAttributes;

import java.util.List;

@Controller
@SessionAttributes(value={"u","Ocu","Oe","Om"})
//若希望在多个请求之间共用数据,则可以在控制器类上标注该注释, 配置需要在session中存放的数据范围
//spring MVC 将寸放在model中对应的数据暂存到HttpSession 中
//@SessionAttributes只能使用在类定义上。

//默认情况下Spring MVC将模型中的数据存储到request域中。当一个请求结束后，数据就失效了。
// 如果要跨页面使用。那么需要使用到session。
// 而@SessionAttributes注解就可以使得模型中的数据存储一份到session域中。

//1、names：这是一个字符串数组。里面应写需要存储到session中数据的名称。
//
//2、types：根据指定参数的类型，将模型中对应类型的参数存储到session中
//
//3、value：其实和names是一样的。

public class LoginPage {

	@Autowired
	SelectCusDao customer;

	@Autowired
	SelectEmpDao emp;
	@Autowired
    SelectGoodsDao select1;

	@RequestMapping("login.do")
	public String login(){
		return "login";
	}

	@RequestMapping("register.do")
	public String register(){
		return "register";
	}

	@RequestMapping("employee-files.do")
	public String employee(){
		return "employee-files";
	}
	@RequestMapping("goods-files.do")
	public String goods(){
		return "goods-files";
	}
	@RequestMapping("client-files.do")
	public String client(){
		return "client-files";
	}
	@RequestMapping("stockOrder.do")
	public String stockOrder(Model model){
		List<Customer> list1=customer.select3();
		model.addAttribute("Ocu", list1);
		List<Employee>empl= emp.select4();
		model.addAttribute("Oe", empl);
		List<Merchandise> listmer = select1.selectme();
		model.addAttribute("Om", listmer);
		return "stockOrder";
	}
	@RequestMapping("stockIn.do")
	public String stockIn(){
		return "stockIn";
	}
	@RequestMapping("goods-insert.do")
	public String ginsert(){
		return "goods-insert";
	}
	@RequestMapping("client-insert.do")
	public String cinsert(){
		return "client-insert";
	}
	@RequestMapping("employee-insert.do")
	public String einsert(){
		return "employee-insert";
	}

	
	
	
}
